Skip to content

Add support for printing via Octoprint API#6418

Merged
Floppy merged 2 commits into
mainfrom
octoprint
Jun 17, 2026
Merged

Add support for printing via Octoprint API#6418
Floppy merged 2 commits into
mainfrom
octoprint

Conversation

@Floppy

@Floppy Floppy commented Jun 17, 2026

Copy link
Copy Markdown
Collaborator

Adds upload support for the Octoprint API. Woo!

Resolves #6433

@Floppy Floppy added the feature User-facing features and product enhancements label Jun 17, 2026
@Floppy Floppy changed the title Add Octoprint API print host Add support for printing via Octoprint API Jun 17, 2026
@Floppy Floppy enabled auto-merge June 17, 2026 16:50
@codacy-production

codacy-production Bot commented Jun 17, 2026

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 10 complexity

Metric Results
Complexity 10

View in Codacy

🟢 Coverage 51.85% diff coverage · -0.12% coverage variation

Metric Results
Coverage variation -0.12% coverage variation (-1.00%)
Diff coverage 51.85% diff coverage

View coverage diff in Codacy

Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (5c337b5) 7308 6088 83.31%
Head commit (3b8eb7b) 7335 (+27) 6102 (+14) 83.19% (-0.12%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#6418) 27 14 51.85%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@Floppy Floppy merged commit 52a434b into main Jun 17, 2026
17 checks passed
@Floppy Floppy deleted the octoprint branch June 17, 2026 17:14
doonga pushed a commit to greyrock-labs/home-ops that referenced this pull request Jun 23, 2026
…0.145.1) (#374)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/bjw-s-labs/manyfold](https://ghcr.io/bjw-s-labs/manyfold) ([source](https://github.com/manyfold3d/manyfold)) | minor | `0.144.1` → `0.145.1` |

---

### Release Notes

<details>
<summary>manyfold3d/manyfold (ghcr.io/bjw-s-labs/manyfold)</summary>

### [`v0.145.1`](https://github.com/manyfold3d/manyfold/releases/tag/v0.145.1)

[Compare Source](manyfold3d/manyfold@v0.145.0...v0.145.1)

Quick bugfix release for an S3 storage scanning problem.

##### What's Changed

##### 🐛 Bug Fixes 🐛

- Prevent file scan from picking up files in .manyfold folders by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6480](manyfold3d/manyfold#6480)

**Full Changelog**: <manyfold3d/manyfold@v0.145.0...v0.145.1>

### [`v0.145.0`](https://github.com/manyfold3d/manyfold/releases/tag/v0.145.0)

[Compare Source](manyfold3d/manyfold@v0.144.1...v0.145.0)

It's printing time! Now you can print pre-sliced files straight from Manyfold (given the right file and printer!). Configure your local printer connection in settings, and then you can send GCODE or SL1 files straight from the file menu! Admins automatically have print permissions, but you can assign the 'printer' role to other accounts as well, if you're feeling brave!

At this point we have support for sending GCODE to [Octoprint](https://octoprint.org) & [Klipper](https://www.klipper3d.org), and GCODE and SL1 to printers with [PrusaLink](https://help.prusa3d.com/article/prusa-connect-and-prusalink-explained_302608#what-is-prusalink). We also have SL1 support for printers running [Odyssey](https://openresin.org/projects/odyssey), the open source firmware from [Open Resin Alliance](https://openresin.org), who recently released the [DragonFruit](https://dragonfruit-slicer.com) slicer. We want to add more support in future, and if you want to help get it working with *your* printer, take a look at our [issue list](https://github.com/manyfold3d/manyfold/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22good%20first%20issue%22) and join the [development channel on Matrix](https://matrix.to/#/#manyfold-development:matrix.org).

IMPORTANT: this is all pretty tricky to test without actually having a bank of different printers, so there may well be bugs. Don't print anything unattended until you're sure it's working properly, and if you have any problems, please [report it on GitHub](https://github.com/manyfold3d/manyfold/issues/new?template=bug_report.md).

VERY IMPORTANT: Manyfold doesn't actually *know* if a sliced file is physically compatible with your printer, so it's completely on you to check before you print!

##### What's Changed

##### ✨ New Features ✨

- Manage 3D Printer connections in the settings UI by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6394](manyfold3d/manyfold#6394)
- Add Moonraker API (Klipper) print service by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6393](manyfold3d/manyfold#6393)
- Add "print with {printer}" links to File menus and pages by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6416](manyfold3d/manyfold#6416)
- Add support for printing via Octoprint API by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6418](manyfold3d/manyfold#6418)
- Index a number of sliced DLP file formats (e.g. CBDDLP, SL1, Photon, GOO and more) by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6419](manyfold3d/manyfold#6419)
- Add print via OpenResinAlliance Odyssey API by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6425](manyfold3d/manyfold#6425)
- Support sending gcode or SL1 to PrusaLink machines by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6432](manyfold3d/manyfold#6432)
- Add "printer" role to allow users access to start prints by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6453](manyfold3d/manyfold#6453)

##### 🐛 Bug Fixes 🐛

- Fix page errors caused by using default parameter in nested blocks by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6397](manyfold3d/manyfold#6397)
- Fix and add tests for new file detection on S3 storage by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6466](manyfold3d/manyfold#6466)
- Handle incorrectly encoded filenames inside zipfiles by forcing to UTF-8 by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6468](manyfold3d/manyfold#6468)
- Include all tags in dropdown by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6471](manyfold3d/manyfold#6471)

##### 🌍 Internationalization 🌏

- Translations updated: pt by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6426](manyfold3d/manyfold#6426)
- Translations updated: ru by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6406](manyfold3d/manyfold#6406)
- Translations updated: nl by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6405](manyfold3d/manyfold#6405)
- Translations updated: pl by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6404](manyfold3d/manyfold#6404)
- Translations updated: de by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6403](manyfold3d/manyfold#6403)
- Translations updated: ja by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6402](manyfold3d/manyfold#6402)
- Translations updated: es by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6401](manyfold3d/manyfold#6401)
- Translations updated: cs by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6400](manyfold3d/manyfold#6400)
- Translations updated: zh-CN by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6399](manyfold3d/manyfold#6399)
- Translations updated: fr by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6398](manyfold3d/manyfold#6398)

##### 🛠️ Other Improvements 🛠️

- Get print host configuration from print services  by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6413](manyfold3d/manyfold#6413)
- Remove a number of JS dependencies no longer required now we're using Vite by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6414](manyfold3d/manyfold#6414)
- Add background job for sending files to print services by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6412](manyfold3d/manyfold#6412)
- Add optional credentials to print host form by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6417](manyfold3d/manyfold#6417)
- Add explanation for required network access from Manyfold to print hosts by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6420](manyfold3d/manyfold#6420)
- Add tests for Moonraker and Octoprint services by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6423](manyfold3d/manyfold#6423)
- Use print service input types to check files on upload by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6446](manyfold3d/manyfold#6446)
- Use the Rails plugin for vite by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6451](manyfold3d/manyfold#6451)
- Improve and fix translation strings for printing feature by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6452](manyfold3d/manyfold#6452)
- Improve "safe folder name" paths  by [@&#8203;Floppy](https://github.com/Floppy) in [#&#8203;6470](manyfold3d/manyfold#6470)

**Full Changelog**: <manyfold3d/manyfold@v0.144.1...v0.145.0>

</details>

---

### Configuration

📅 **Schedule**: (in timezone America/New_York)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzQuMSIsInVwZGF0ZWRJblZlciI6IjQzLjIzNC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Reviewed-on: https://git.greyrock.io/greyrock-labs/home-ops/pulls/374
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature User-facing features and product enhancements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Print via Octoprint API

1 participant